import request from '@/utils/request/request';
import {
  ExcelModuleListRes,
  ExcelModuleRecord,
  ExcelModuleParams,
  ExcelModuleRecordReq,
  ExcelPropertyRecord,
  ExcelPropertyRecordReq,
} from './model/excelModuleModel';

// 查询数据源配置列表
export function queryExcelModulePage(params?: ExcelModuleParams) {
  return request.get<ExcelModuleListRes>('/api/system/excel-module/page', {
    params,
  });
}

// 根据id查询excel模板
export function getExcelModuleById(id: string) {
  return request.get<ExcelModuleRecord>(`/api/system/excel-module/${id}`);
}

// 保存模板信息
export function saveExcelModuleRecord(data: ExcelModuleRecordReq) {
  return request.post('/api/system/excel-module', {
    ...data,
  });
}

// 更新模板信息
export function updateExcelModuleRecord(data: ExcelModuleRecord) {
  return request.put('/api/system/excel-module', {
    ...data,
  });
}

// 删除模板
export function removeExcelModuleRecord(id: string) {
  return request.delete(`/api/system/excel-module/${id}`);
}

// 根据模板id查询字段（列表）
export function queryExcelProperties(moduleId: string) {
  return request.get(`/api/system/excel-exp-property/module/${moduleId}`);
}

// 保存模板字段（单个）
export function saveExcelPropertyRecord(data: ExcelPropertyRecordReq) {
  return request.post('/api/system/excel-exp-property', data);
}

// 保存模板字段（单个）
export function updateExcelPropertyRecord(data: ExcelPropertyRecord) {
  return request.put('/api/system/excel-exp-property', data);
}

// 删除模板字段（单个）
export function removeExcelPropertyRecord(id: string) {
  return request.delete(`/api/system/excel-exp-property/${id}`);
}
